import tool from '@/utils/tool';

/**
 * 用户权限指令
 * @directive 单个权限验证（v-column="'xxx'"）
 * @directive 多个权限验证，满足一个则显示（v-columns="['xxx','xxx']"）
 * @directive 多个权限验证，全部满足则显示（v-columns-all="['xxx','xxx']"）
 */
export default {
	mounted(el, binding) {
		// 1. 获取权限列表，确保总是数组
		const permissions = tool.data.get("COLUMNSAUTH") || [];

		// 2. 获取绑定的权限值
		const authKey = binding.value;

		// 3. 如果权限值为空则直接保留列
		if (authKey == null || authKey === '') {
			return;
		}

		// 4. 检查权限：不满足时移除元素
		if (!permissions.includes(authKey)) {
			el.parentNode?.removeChild(el);
		}
	}
}
